package si.yun.web;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.tobato.fastdfs.domain.fdfs.StorePath;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Controller;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import si.yun.entity.*;
import si.yun.service.syActicleSe;
import si.yun.service.syForumSe;
import si.yun.utils.CreCouPoi;
import si.yun.utils.JsonData;
import si.yun.utils.TemplateExcelUtil;
import si.yun.utils.TestAliUpload;

import javax.servlet.http.HttpSession;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 *  @ClassName: 教师查询
 *  @Description: TODO 
 *  @Author: 张雨薇
 *  @Date 2021/8/2 10:08
 */
@Controller
@RequestMapping("/SyteacherSelController")
@PropertySource({"classpath:config.properties"})
public class SyteacherSelController {
    @Autowired
    private syForumSe se;

    @Autowired
    private syActicleSe se1;

    private String actUrl;

    @Value("${path1}")
    private String path;


    @Autowired
    private TestAliUpload testAliUpload;

    /**
      * @Author : 张雨薇
      * @Date : 2021/7/29 15:48
      * @Param : [actid]
      * @Return : java.util.List<si.yun.entity.SyForum>
      */
    @RequestMapping("/ForumTab")
    @ResponseBody
    public JsonData seForum(@RequestParam Map<String,Object> map) {
        List<SyForum> syForums = se.seForum(map);

        for(SyForum sf:syForums){
            if(sf.getArticleUrl()!=null){
                sf.setArticleUrl(path+sf.getArticleUrl());
            }
        }
        return syForums!=null? JsonData.buildSuccess(syForums): JsonData.buildError("报错了");
    }

    /**
      * @Author : 张雨薇
      * @Date : 2021/8/1 19:38
      * @Param : [fid]
      * @Return : si.yun.entity.SyForum
      */
    @RequestMapping("/seForumTab")
    @ResponseBody
    public JsonData seForumTab(Integer fid) {

        List<SyForum> syForum = se.seForumTab(fid);
        return syForum!=null? JsonData.buildSuccess(syForum): JsonData.buildError("报错了");
    }

    /**
      * @Author : 张雨薇
      * @Date : 2021/7/29 11:35
      * @Param : []
      * @Return : java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
      */
    @RequestMapping("/ActicleTree")
    @ResponseBody
    public JsonData getManageDtree(){
        List<Map<String, Object>> seManageDtree = se1.seActcleTree(1);
        return seManageDtree!=null? JsonData.buildSuccess(seManageDtree): JsonData.buildError("报错了");
    }

    /**
      * @Author : 评论信息
      * @Date : 2021/8/2 17:17
      * @Param : [forumid, limitnum]
      * @Return : java.util.List<si.yun.entity.SyComment>
      */
    @RequestMapping("/seComment")
    @ResponseBody
    public JsonData seComment(Integer forumid, Integer limitnum) {
        List<Map<String,Object>> syComments = se.seComment(forumid, limitnum);
        return syComments!=null? JsonData.buildSuccess(syComments): JsonData.buildError("报错了");
    }

    /**
      * @Author : 查询用户
      * @Date : 2021/8/2 21:28
      * @Param : [name, num]
      * @Return : si.yun.entity.SyUser
      */
    @RequestMapping("/seUser")
    @ResponseBody
    public JsonData seUser(String name, String num) {
        SyUser syUser = se.seUser(name, num);
        return syUser!=null? JsonData.buildSuccess(syUser): JsonData.buildError("报错了");
    }
    @RequestMapping("/SeActid")
    @ResponseBody
    public JsonData SeActid(String type1) {
        Integer integer = se.SeActid(type1);
        return integer!=null? JsonData.buildSuccess(integer): JsonData.buildError("报错了");
    }

    /**
      * @Author : 张雨薇
      * @Date : 2021/8/3 17:13
      * @Param : []
      * @Return : java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
      */
    @RequestMapping("/seActcleTab")
    @ResponseBody
    public JsonData seActcleTab() {
        List<Map<String, Object>> maps = se1.seActcleTab();
        return maps!=null? JsonData.buildSuccess(maps): JsonData.buildError("报错了");
    }

    /**
      * @Author : 查询基本信息
      * @Date : 2021/8/4 14:49
      * @Param : [id]
      * @Return : java.util.Map<java.lang.String,java.lang.Object>
      */
    @RequestMapping("/SeUserComment")
    @ResponseBody
    public JsonData SeUserComment(Integer id) {
        Map<String, Object> stringObjectMap = se.SeUserComment(id);
        return stringObjectMap!=null? JsonData.buildSuccess(stringObjectMap): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程树
      * @Date : 2021/8/4 16:57
      * @Param : []
      * @Return : java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
      */
    @RequestMapping("/seCurriculumTree")
    @ResponseBody
    public JsonData seCurriculumTree(Integer categoryId){
        List<Map<String, Object>> maps = se.seCurriculumTree(0,categoryId);
        return maps!=null? JsonData.buildSuccess(maps): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程总数
      * @Date : 2021/8/4 19:37
      * @Param : []
      * @Return : int
      */
    @RequestMapping("/Secourse")
    @ResponseBody
    public JsonData Secourse() {
        int secourse = se.Secourse();
        return secourse>0? JsonData.buildSuccess(secourse): JsonData.buildError("报错了");
    }

    /**
      * @Author : 已上架
      * @Date : 2021/8/4 19:38
      * @Param : []
      * @Return : int
      */
    @RequestMapping("/Sestatus")
    @ResponseBody
    public JsonData Sestatus() {
        int sestatus = se.Sestatus();
        return sestatus>0? JsonData.buildSuccess(sestatus): JsonData.buildError("报错了");
    }

    /**
      * @Author : 未上架
      * @Date : 2021/8/4 19:39
      * @Param : []
      * @Return : int
      */
    @RequestMapping("/SestatusNo")
    @ResponseBody
    public JsonData SestatusNo() {
        int i = se.SestatusNo();
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 待审核
      * @Date : 2021/8/4 19:39
      * @Param : []
      * @Return : int
      */
    @RequestMapping("/Secstatus")
    @ResponseBody
    public JsonData Secstatus() {
        int secstatus = se.Secstatus();
        return secstatus>0? JsonData.buildSuccess(secstatus): JsonData.buildError("报错了");
    }

    /**
      * @Author : 未通过
      * @Date : 2021/8/4 19:40
      * @Param : []
      * @Return : int
      */
    @RequestMapping("/SecstatusNo")
    @ResponseBody
    public JsonData SecstatusNo() {
        int i = se.SecstatusNo();
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程表
      * @Date : 2021/8/5 9:37
      * @Param : [courseName, classid, coursenprice]
      * @Return : java.util.List<si.yun.entity.SyCourse>
      */
    @RequestMapping("/SeCurriculumTab")
    @ResponseBody
    public JsonData SeCurriculumTab(String courseName, Integer classid, Integer coursenprice, String intro, Integer status, Integer cstatus, Integer num, Integer userId) {
        List<SyCourse> syCourses = se.SeCurriculumTab(courseName, classid, coursenprice,intro,status,cstatus,num,userId);
        for(SyCourse sc:syCourses){
            sc.setUrl(path+sc.getUrl());
        }
        return syCourses!=null? JsonData.buildSuccess(syCourses): JsonData.buildError("报错了");
    }


    /**
      * @Author : 审核结果
      * @Date : 2021/8/6 9:26
      * @Param : [courseid]
      * @Return : si.yun.entity.SyCourse
      */
   @RequestMapping("/SeRecord")
    @ResponseBody
    public JsonData SeRecord(Integer courseid, Integer type) {
        List<Map<String,Object>> syCourseRecords = se.SeRecord(courseid,type);
        return syCourseRecords!=null? JsonData.buildSuccess(syCourseRecords): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程详情
      * @Date : 2021/8/6 9:26
      * @Param : [courseid]
      * @Return : si.yun.entity.SyCourse
      */
    @RequestMapping("/SeCourseView")
    @ResponseBody
    public JsonData SeCourseView(Integer courseid) {
        SyCourseTab syCourse = se.SeCourseView(courseid);
        syCourse.setUrl(path+syCourse.getUrl());
        return syCourse!=null? JsonData.buildSuccess(syCourse): JsonData.buildError("报错了");
    }


    /**
      * @Author : 课程评论
      * @Date : 2021/8/6 15:45
      * @Param : []
      * @Return : java.util.List<si.yun.entity.SyComment>
      */
    @RequestMapping("/setComment")
    @ResponseBody
    public JsonData setComment(String beforeId, String beforeName, String content) {
        List<SyComment> syComments = se.setComment(beforeId,beforeName,content);
        return syComments!=null? JsonData.buildSuccess(syComments): JsonData.buildError("报错了");
    }


    /**
      * @Author : 课程评论详情
      * @Date : 2021/8/9 11:47
      * @Param : [commentid]
      * @Return : java.util.List<si.yun.entity.SyCourse>
      */
    @RequestMapping("/SeCommentCourse")
    @ResponseBody
    public JsonData SeCommentCourse(Integer commentid) {
        SyCourse syCourses = se.SeCommentCourse(commentid);
        return syCourses!=null? JsonData.buildSuccess(syCourses): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程评论
      * @Date : 2021/8/9 13:56
      * @Param : [forumid, limitnum]
      * @Return : java.util.List<si.yun.entity.SyComment>
      */
    @RequestMapping("/SeCommentlimit")
    @ResponseBody
    public JsonData SeCommentlimit(Integer forumid, Integer limitnum) {
        List<SyComment> syComments = se.SeCommentlimit(forumid, limitnum);
        return syComments!=null? JsonData.buildSuccess(syComments): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程详情
      * @Date : 2021/8/9 15:24
      * @Param : [courseid]
      * @Return : si.yun.entity.SyCourse
      */
    @RequestMapping("/SeCourseText")
    @ResponseBody
    public JsonData SeCourseText(Integer courseid) {
        SyCourse syCourse = se.SeCourseText(courseid);
        return syCourse!=null? JsonData.buildSuccess(syCourse): JsonData.buildError("报错了");
    }

    /**
      * @Author : 查看用户是否存在
      * @Date : 2021/8/10 11:21
      * @Param : [name]
      * @Return : si.yun.entity.SyBeforeUser
      */
    @RequestMapping("/SeBefore")
    @ResponseBody
    public JsonData SeBefore(String name) {
        SyBeforeUser syBeforeUser = se.SeBefore(name);
        return syBeforeUser!=null? JsonData.buildSuccess(syBeforeUser): JsonData.buildError("报错了");
    }

    /**
      * @Author : 微圈审核
      * @Date : 2021/8/24 9:45
      * @Param : []
      * @Return : java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
      */
    @RequestMapping("/ForumExam")
    @ResponseBody
    public JsonData SeForumExam(String actName, Integer userId, String accMoney) {
        List<Map<String, Object>> maps = se.SeForumExam(actName,userId,accMoney);
        for(Map<String, Object> map:maps){
            if(map.get("url")!=null){
                map.put("url",path+map.get("url"));
            }
        }
        return maps!=null? JsonData.buildSuccess(maps): JsonData.buildError("报错了");
    }

    /**
      * @Author : 张雨薇
      * @Date : 2021/7/30 15:52
      * @Param : [Newname, id]
      * @Return : int
      */
    @RequestMapping("/upActTree")
    @ResponseBody
    public JsonData upActTree(String Newname, Integer id, Integer updateUser) {
        int i = se1.upActTree(Newname,id,updateUser);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 树节点的修改
      * @Date : 2021/8/4 20:29
      * @Param : [Newname, id]
      * @Return : int
      */
    @RequestMapping("/UpCurriculumTree")
    @ResponseBody
    public JsonData UpCurriculumTree(SyCourseClass sc) {
        int i = se.UpCurriculumTree(sc);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程修改
      * @Date : 2021/8/6 11:35
      * @Param : [courseid, classid, courseName, intro]
      * @Return : int
      */
    @RequestMapping("/Upcourse")
    @ResponseBody
    public JsonData Upcourse(SyCourse sc, String str, String strAdd, String delImg) throws JsonProcessingException {

        //序列化
        ObjectMapper objectMapper=new ObjectMapper();

        //删除预览图
        List<Map<String,Object>> list = objectMapper.readValue(str, List.class);

        //添加预览图
        List<Map<String,Object>> list2 = objectMapper.readValue(strAdd, List.class);

        //删除服务器图片
        List<Map<String,Object>> list3 = objectMapper.readValue(delImg, List.class);


        int upcourse = se.upCourses(sc,list,list2,list3);


        return upcourse>0? JsonData.buildSuccess(upcourse): JsonData.buildError("报错了");
    }

    /**
      * @Author : 审核修改
      * @Date : 2021/8/25 16:53
      * @Param : [detaId]
      * @Return : int
      */
    @RequestMapping("/updateForum")
    @ResponseBody
    public JsonData updateForum(Integer detaId, Integer id) {
        int i = se.updateForum(detaId,id);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 添加树节点
      * @Date : 2021/7/30 17:03
      * @Param : [name, parentId]
      * @Return : int
      */
    @RequestMapping("/addActTree")
    @ResponseBody
    public JsonData inActTree(String name, Integer parentId, Integer createUser) {
        int i = se1.inActTree(name, parentId,createUser);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 添加评论
      * @Date : 2021/8/2 21:40
      * @Param : [userid, id, title]
      * @Return : int
      */
    @RequestMapping("/addComment")
    @ResponseBody
    public JsonData inComment(Integer userid, Integer id, String title) {
        //敏感词过滤
        int i = se.inComment(userid, id, title);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 文章添加
      * @Date : 2021/8/3 11:55
      * @Param : [title, content, typeid, userid]
      * @Return : int
      */
    @RequestMapping("/addCommentAct")
    @ResponseBody
    public JsonData addCommentAct(String title, String content, Integer typeid, Integer userid, Integer details) {
        int i = se.addCommentAct(title,actUrl,content, typeid, userid,details);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 树节点的添加
      * @Date : 2021/8/4 20:21
      * @Param : [name, parentId]
      * @Return : int
      */
    @RequestMapping("/AddCurriculumTree")
    @ResponseBody
    public JsonData AddCurriculumTree(SyCourseClass sc) {
        int i = se.AddCurriculumTree(sc);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 添加评论
      * @Date : 2021/8/10 11:38
      * @Param : [userid, id, title]
      * @Return : int
      */
    @RequestMapping("/AddCommentCourse")
    @ResponseBody
    public JsonData AddCommentCourse(Integer userid, Integer id, String title) {
        int i = se.AddCommentCourse(userid, id, title);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 张雨薇
      * @Date : 2021/7/29 19:26
      * @Param : [microcircleId]
      * @Return : int
      */
    @RequestMapping("/delectForum")
    @ResponseBody
    public JsonData deleteByPrimaryKey(Integer microcircleId) {
        int i = se.deleteByPrimaryKey(microcircleId);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : ztree的删除
      * @Date : 2021/7/30 16:21
      * @Param : [acticleCategoryId]
      * @Return : int
      */
    @RequestMapping("/delActTree")
    @ResponseBody
    public JsonData deleteByPrimaryKey1(Integer acticleCategoryId) {
        int i = se1.deleteByPrimaryKey(acticleCategoryId);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 评论删除
      * @Date : 2021/8/2 20:07
      * @Param : [cid]
      * @Return : int
      */
    @RequestMapping("/deComment")
    @ResponseBody
    public JsonData deComment(Integer cid) {
        int i = se.deComment(cid);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 树节点的删除
      * @Date : 2021/8/4 20:10
      * @Param : [id]
      * @Return : int
      */
    @RequestMapping("/deCurriculumTree")
    @ResponseBody
    public JsonData deCurriculumTree(Integer id) {
        int i = se.deCurriculumTree(id);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 课程删除
      * @Date : 2021/8/5 17:27
      * @Param : [cid]
      * @Return : int
      */
    @RequestMapping("/delectCourseTable")
    @ResponseBody
    public JsonData delectCourseTable(Integer cid,String url,Integer mid) {
        int i = se.delectCourseTable(cid,url,mid);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }
    /**
      * @Author : 课程评论的删除
      * @Date : 2021/8/25 10:28
      * @Param : [id]
      * @Return : int
      */
    @RequestMapping("/DeCommentTab")
    @ResponseBody
    public JsonData DeCommentTab(Integer commentid){
        int i = se.DeCommentTab(commentid);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    @Value("${path1}")
    private String path2;

    /**
      * @Author : 富文本文件上传
      * @Date : 2021/8/28 22:43
      * @Param : [file]
      * @Return : java.util.Map<java.lang.String,java.lang.Object>
      */
    @RequestMapping("/getimg")
    @ResponseBody
    public Map<String,Object> addFile(@RequestParam("file")MultipartFile file) throws IOException {
        Map<String,Object> map=new HashMap<>();
        Map<String,Object> map1=new HashMap<>();
        //重命名文件
        long currName = System.currentTimeMillis();
        String fileName = file.getOriginalFilename();
        String fileSub = fileName.substring(fileName.lastIndexOf("."));
        String newName=fileName.substring(0,fileName.lastIndexOf("."))+"_"+currName+fileSub;
        actUrl=newName;
        String pathName=path2+newName;
        file.transferTo(new File(pathName));
        map.put("code",0);
        map.put("msg","上传成功");
        map1.put("src","/upload/"+actUrl);
        map.put("data",map1);
        return map;
    }

    /**
      * @Author : 课程导入
      * @Date : 2021/8/31 19:50
      * @Param : [file, session]
      * @Return : si.yun.utils.JsonData
      */
   @RequestMapping("/addCouImport")
    @ResponseBody
    public JsonData addCouImport(MultipartFile file, HttpSession session){

       //获取创建人
       Map<String,Object> user = (Map<String, Object>) session.getAttribute("user");

       List<SyCourseTab> list=new ArrayList<>();
        SyCourseTab sy=null;
        List<List<String>> lists = null;
        try {
            lists = TemplateExcelUtil.readExcel(file.getInputStream());
            if(!CollectionUtils.isEmpty(lists)){
                for(int a=0;a<lists.size();a++){
                    List<String> strings = lists.get(a);
                    sy = CreCouPoi.CreCouPoi(strings, session);

                    //设置创建人
                    sy.setCreateId((Integer) user.get("user_id"));

                    list.add(sy);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        int i = se.addSyCourse(list);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }


    /**
      * @Author : 微圈评论
      * @Date : 2021/9/3 22:24
      * @Param : [comName, userId, accId]
      * @Return : java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
      */
    @RequestMapping("/MicroreviewTab")
    @ResponseBody
    public JsonData MicroreviewTab(String comName, String userId, String accId) {
        List<Map<String, Object>> maps = se.MicroreviewTab(comName, userId, accId);
        return maps!=null? JsonData.buildSuccess(maps): JsonData.buildError("报错了");
    }

    /**
      * @Author : 修改课程图片
      * @Date : 2021/9/9 10:46
      * @Param : [file]
      * @Return : java.util.Map<java.lang.String,java.lang.Object>
      */
    @RequestMapping("uploadAttachments")
    @ResponseBody
    public Map<String,Object> uploadAttachments(@RequestParam("file") MultipartFile files, HttpSession session) throws IOException {
        Map<String,Object> map=new HashMap<>();


        String newName = uploadFile(files);
        session.setAttribute("backImgNewName",newName);

        map.put("code",0);
        map.put("msg","上传成功");
        map.put("src",path+newName);


        return map;

    }


    /**
      * @Author : 评论隐藏
      * @Date : 2021/9/10 8:48
      * @Param : [commentid]
      * @Return : si.yun.utils.JsonData
      */
    @RequestMapping("hideComment")
    @ResponseBody
    public JsonData hideComment(Integer commentid){
        int i = se.hideComment(commentid);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /**
      * @Author : 用户查询
      * @Date : 2021/9/15 9:05
      * @Param : [account, password]
      * @Return : si.yun.utils.JsonData
      */
    @RequestMapping("persoalContent")
    @ResponseBody
    public JsonData persoalContent(String account, String password){
        Integer integer = se.seUserContent(account, password);
        return integer!=null? JsonData.buildSuccess(integer): JsonData.buildError("报错了");
    }

    /**
      * @Author : 修改课程状态
      * @Date : 2021/9/27 14:30
      * @Param : [courseId, status]
      * @Return : si.yun.utils.JsonData
      */
    @RequestMapping("updateStatus")
    @ResponseBody
    public JsonData updateStatus(Integer courseId, Integer status){
        int i = se.updateStatus(courseId, status);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }
    public String  uploadFile(@RequestParam("file") MultipartFile files) throws IllegalStateException, IOException {
        //上传到服务器
        StorePath upload = testAliUpload.upload(files);
        String newName = upload.getFullPath();
        return newName;
    }

 /*
     * @Description : 查询课程详情
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/10/13 10:19
     */
    @RequestMapping("selCourseText")
    @ResponseBody
    public JsonData selCourseText(Integer id){
        Map<String, Object> map = se.selCourseText(id);
        return map!=null? JsonData.buildSuccess(map): JsonData.buildError("报错了");
    }

  /*
     * @Description : 查询课程日志
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/10/15 10:58
     */
    @PostMapping("/selCourseLog")
    @ResponseBody
    public JsonData selCourseLog(Integer type, Integer logId){
        List<Map<String, Object>> list=se.selCourseLog(type,logId);
        return list!=null? JsonData.buildSuccess(list): JsonData.buildError("服务器出错了");
    }
    
    
    /*
     * @Description : 查询所有微圈分类赋值给下拉菜单
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/11/16 11:56
     */
    @PostMapping("/selActicleCategraySelect")
    @ResponseBody
    public JsonData selActicleCategraySelect(){
        List<Map<String, Object>> list=se.selActicleCategraySelect();
        return list!=null? JsonData.buildSuccess(list): JsonData.buildError("服务器出错了");
    }

    /*
     * @Description : 课程数
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/11/17 20:38
     */
    @RequestMapping("/seCourseClass")
    @ResponseBody
    public JsonData seCourseClass(Integer categoryId){
        List<Map<String, Object>> maps = se.seCourseClass(0,categoryId);
        return maps!=null? JsonData.buildSuccess(maps): JsonData.buildError("报错了");
    }

    /*
     * @Description : 个人微圈管理
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/11/22 16:23
     */
    @RequestMapping("/seForumPrivate")
    @ResponseBody
    public JsonData seForumPrivate(@RequestParam Map<String,Object> map) {
        List<SyForum> syForums = se.seForumPrivate(map);
        return syForums!=null? JsonData.buildSuccess(syForums): JsonData.buildError("报错了");
    }

    /*
     * @Description : 修改课程状态
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/11/29 14:16
     */
    @RequestMapping("/updCstatus")
    @ResponseBody
    public JsonData updCstatus(Integer cstatus, Integer updateId, Integer id){
        int i = se.updCstatus(cstatus,updateId,id);
        return i>0? JsonData.buildSuccess(i): JsonData.buildError("报错了");
    }

    /*
     * @Description : 删除服务器图片
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/12/28 15:54
     */
    @RequestMapping("/noDelImg")
    @ResponseBody
    public JsonData noDelImg(String  noDelImg) throws JsonProcessingException {

        //序列化
        ObjectMapper objectMapper=new ObjectMapper();

        //删除预览图
        List<Map<String,Object>> list = objectMapper.readValue(noDelImg, List.class);

        if(list.size()>0){
            for(Map<String,Object> map:list){
                testAliUpload.delete((String) map.get("delImg"));
            }
        }
        return JsonData.buildSuccess("");
    }

    /*
     * @Description : 传单个参数，删除服务器图片
     * @Return : si.yun.utils.JsonData
     * @Date : 2021/12/29 11:35
     */
    @RequestMapping("/noDelImgStr")
    @ResponseBody
    public JsonData noDelImgStr(String  noDelImgStr) throws JsonProcessingException {
        testAliUpload.delete(noDelImgStr);
        return JsonData.buildSuccess("删除成功");
    }

}
